cURL php NodeJS Python cSharp

Baidu SERP API: Overview

Baidu SERP API provides up to 100 SERP results from Baidu Search.

The returned results are specific to the indicated keyword, and location parameters. We emulate set location and search engine with the highest accuracy so that the results you receive will match the actual search results for the specified parameters at the time of task setting. You can always check the returned results accessing the check_url in the Incognito mode to make sure the received data is entirely relevant. Note that user preferences, search history, and other personalized search factors are ignored by our system and thus would not be reflected in the returned SERP results.

Note: direct URLs of the results are not provided by default due to Baidu restrictions. Specify get_website_url as true to obtain the direct URL for each search result. In this case the charge per task will be multiplied by 10 as our system runs a separate request for each ranked website to return its direct URL.

You can indicate the following device and OS types that you would like to receive SERP results for when setting a task:

  • Mobile. Available OS types: iOS, Android;
  • Desktop. Available OS types: Windows, macOS.

SERP API makes use of rank_group and rank_absolute parameters that show search engine result’s position among the group of elements or across all the elements in SERP respectively. Learn more about the difference between rank absolute and rank group in our help article.

Baidu SERP functions

Baidu SERP API provides search engine results with three functions: Regular, Advanced, and HTML.

The Regular function in Baidu Organic SERP provides top 100 organic and paid search results for the specified keyword, search engine, and location.

The Advanced function in Baidu Organic SERP provides data on the top 100 search engine results for the specified keyword, search engine, and location. This endpoint will also supply you with extra SERP elements, such as images, local_pack, map, related_searches, video.

The HTML function in Baidu SERP API arovides a raw SERP HTML page for the specified keyword, search engine, and location.


The cost of using Baidu SERP API endpoints depends on the selected method and priority of task execution. Available methods and priorities are described below.

Baidu SERP API supports only the Standard method of data retrieval. This method requires making separate POST and GET requests, but it’s more affordable. Using this method, you can retrieve the results after our system collects them.

‌Alternatively, you can specify pingback_url or postback_url when setting a task, and we will notify you on completion of tasks or send the results to you respectively. Note that if you use the postback_url field, you should also indicate the function that will be applied for data retrieval: regular, advanced, or html.

If you use the Standard method without specifying pingback_url or postback_url, you can receive the list of id for all completed tasks using the ‘Tasks Ready’ endpoint. It is designed to provide you with the list of completed tasks, which haven’t been collected yet. Then, you can retrieve the results using the ‘Task GET’ endpoint.

Learn more about task completion and obtaining a list of completed tasks in this help center article.

You can send up to 2000 POST and GET API calls per minute in total, with each POST call containing no more than 100 tasks. Contact us if you would like to raise the limit. ‌Visit DataForSEO Help Center to get practical tips for request handling depending on your SERP API payload volume.

Priorities and cost

The Standard method has two different priorities that stand for the relative speed of task execution and have different prices:

1. Normal priority;
2. High priority.

Note: there are several paid parameters that increase the cost of the task:

  • get_website_url
  • depth value above 100

If you use paid parameters, the final cost of the task for the selected method and priority will be multiplied by the product of prices of all paid parameters you used. In short, the final cost of the task is calculated based on the formula below.

cost= B * G * (D/100)

B=base price of the selected method and priority
G=10, if "get_website_url": true
D=depth value rounded up to the next hundred

The cost can be calculated on the Pricing page. To learn more about the cost of all SERP API methods, priorities, and additional parameters, please refer to this help article.

You can test Baidu SERP API for free using DataForSEO Sandbox.